home *** CD-ROM | disk | FTP | other *** search
- 10000 '
- 10010 ' 収支表示プログラム
- 10020 '
- 10030 '
- 10040 ' MLIST.BAS
- 10050 '
- 10060 '
- 10070 ' 初期設定
- 10080 '
- 10090 CLEAR ,,,,,300*1024
- 10100 DEF FONT "システム 12ドット"
- 10110 SCREEN 0
- 10120 SCREEN@0
- 10130 COLOR 7,0,7,0
- 10140 CLS
- 10150 MY=50
- 10160 FSIZE=12/16
- 10170 DIM DAY$(100),KIND$(100),NA$(100),MONEY$(100)
- 10180 '
- 10190 ' コンフィグファイルロード
- 10200 '
- 10210 OPEN "I",1,"MLIST.CFG"
- 10220 LINE INPUT #1,DUMMY$
- 10230 CLOSE
- 10240 PUTTING_TIME=VAL(MID$(DUMMY$,14))
- 10250 '
- 10260 ' ロゴ表示
- 10270 '
- 10280 PALETTE 11,[0,255,255]
- 10290 SYMBOL (2,2),"MList v1.00d",12/16,12/16,%11
- 10300 SYMBOL (457,465),"1993 By EMERALD",12/16,12/16,%11
- 10310 '
- 10320 ' データロード
- 10330 '
- 10340 OPEN "I",1,"MLIST.DAT"
- 10350 WHILE EOF(1)<>-1
- 10360 L=L+1
- 10370 INPUT #1,DAY$(L),KIND$(L),NA$(L),MONEY$(L)
- 10380 WEND
- 10390 CLOSE
- 10400 '
- 10410 ' 計算ルーチン
- 10420 '
- 10430 FOR M=1 TO L
- 10440 IF KIND$(M)="FMT" THEN FMTTOTAL =FMTTOTAL +VAL(MONEY$(M))
- 10450 IF KIND$(M)="SFC" THEN SFCTOTAL =SFCTOTAL +VAL(MONEY$(M))
- 10460 IF KIND$(M)="ARC" THEN ARCTOTAL =ARCTOTAL +VAL(MONEY$(M))
- 10470 IF KIND$(M)="BOOK" THEN BOOKTOTAL=BOOKTOTAL+VAL(MONEY$(M))
- 10480 IF KIND$(M)="FOOD" THEN FOODTOTAL=FOODTOTAL+VAL(MONEY$(M))
- 10490 IF KIND$(M)="WORK" THEN WORKTOTAL=WORKTOTAL+VAL(MONEY$(M))
- 10500 IF KIND$(M)="GIVE" THEN GIVETOTAL=GIVETOTAL+VAL(MONEY$(M))
- 10510 IF KIND$(M)="SOLD" THEN SOLDTOTAL=SOLDTOTAL+VAL(MONEY$(M))
- 10520 NEXT M
- 10530 '
- 10540 ' 支出計算
- 10550 '
- 10560 INTOTAL=WORKTOTAL+GIVETOTAL+SOLDTOTAL
- 10570 '
- 10580 ' 0 除算トラップ
- 10590 '
- 10600 IF INTOTAL=0 THEN *収入表示
- 10610 WORKPER%=WORKTOTAL/INTOTAL*100
- 10620 GIVEPER%=GIVETOTAL/INTOTAL*100
- 10630 SOLDPER%=SOLDTOTAL/INTOTAL*100
- 10640 '
- 10650 *収入表示
- 10660 '
- 10670 SYMBOL(20,MY) ,"労働収入" ,FSIZE,FSIZE,%12
- 10680 SYMBOL(530,MY) ,STR$(WORKPER%)+"%",FSIZE,FSIZE,%12
- 10690 SYMBOL(570,MY) ,STR$(WORKTOTAL) ,FSIZE,FSIZE,%12
- 10700 SYMBOL(20,MY+20) ,"援助収入" ,FSIZE,FSIZE,%12
- 10710 SYMBOL(530,MY+20),STR$(GIVEPER%)+"%",FSIZE,FSIZE,%12
- 10720 SYMBOL(570,MY+20),STR$(GIVETOTAL) ,FSIZE,FSIZE,%12
- 10730 SYMBOL(20,MY+40) ,"売却収入" ,FSIZE,FSIZE,%12
- 10740 SYMBOL(530,MY+40),STR$(SOLDPER%)+"%",FSIZE,FSIZE,%12
- 10750 SYMBOL(570,MY+40),STR$(SOLDTOTAL) ,FSIZE,FSIZE,%12
- 10760 SYMBOL(20,MY+80) ,"総収入" ,FSIZE,FSIZE,%12
- 10770 SYMBOL(570,MY+80),STR$(INTOTAL) ,FSIZE,FSIZE,%12
- 10780 '
- 10790 ' 支出計算
- 10800 '
- 10810 OUTTOTAL=FMTTOTAL+SFCTOTAL+ARCTOTAL+BOOKTOTAL+FOODTOTAL
- 10820 '
- 10830 ' 0 除算トラップ
- 10840 '
- 10850 IF OUTTOTAL=0 THEN *支出表示
- 10860 FMTPER% =FMTTOTAL /OUTTOTAL*100
- 10870 SFCPER% =SFCTOTAL /OUTTOTAL*100
- 10880 ARCPER% =ARCTOTAL /OUTTOTAL*100
- 10890 BOOKPER%=BOOKTOTAL/OUTTOTAL*100
- 10900 FOODPER%=FOODTOTAL/OUTTOTAL*100
- 10910 '
- 10920 *支出表示
- 10930 '
- 10940 SYMBOL(20,MY+120),"FMT支出" ,FSIZE,FSIZE,%10
- 10950 SYMBOL(530,MY+120),STR$(FMTPER%)+"%" ,FSIZE,FSIZE,%10
- 10960 SYMBOL(570,MY+120),STR$(FMTTOTAL) ,FSIZE,FSIZE,%10
- 10970 SYMBOL(20,MY+140),"SFC支出" ,FSIZE,FSIZE,%10
- 10980 SYMBOL(530,MY+140),STR$(SFCPER%)+"%" ,FSIZE,FSIZE,%10
- 10990 SYMBOL(570,MY+140),STR$(SFCTOTAL) ,FSIZE,FSIZE,%10
- 11000 SYMBOL(20,MY+160),"ARC支出" ,FSIZE,FSIZE,%10
- 11010 SYMBOL(530,MY+160),STR$(ARCPER%)+"%" ,FSIZE,FSIZE,%10
- 11020 SYMBOL(570,MY+160),STR$(ARCTOTAL) ,FSIZE,FSIZE,%10
- 11030 SYMBOL(20,MY+180),"雑誌・書籍支出" ,FSIZE,FSIZE,%10
- 11040 SYMBOL(530,MY+180),STR$(BOOKPER%)+"%",FSIZE,FSIZE,%10
- 11050 SYMBOL(570,MY+180),STR$(BOOKTOTAL) ,FSIZE,FSIZE,%10
- 11060 SYMBOL(20,MY+200),"食糧支出" ,FSIZE,FSIZE,%10
- 11070 SYMBOL(530,MY+200),STR$(FOODPER%)+"%",FSIZE,FSIZE,%10
- 11080 SYMBOL(570,MY+200),STR$(FOODTOTAL) ,FSIZE,FSIZE,%10
- 11090 SYMBOL(20,MY+240),"総支出" ,FSIZE,FSIZE,%10
- 11100 SYMBOL(570,MY+240),STR$(OUTTOTAL) ,FSIZE,FSIZE,%10
- 11110 '
- 11120 ' 残金計算
- 11130 '
- 11140 ENDTOTAL=WORKTOTAL+GIVETOTAL+SOLDTOTAL+FMTTOTAL+SFCTOTAL+ARCTOTAL+BOOKTOTAL+FOODTOTAL
- 11150 '
- 11160 ' 0 除算トラップ
- 11170 '
- 11180 IF ENDTOTAL=0 THEN *残金表示
- 11190 ZAP%=ENDTOTAL/INTOTAL*100
- 11200 '
- 11210 *残金表示
- 11220 '
- 11230 IF ENDTOTAL>0 THEN
- 11240 SYMBOL (20,MY+280) ,"残金" ,FSIZE,FSIZE,%12
- 11250 SYMBOL (530,MY+280),STR$(ZAP%)+"%",FSIZE,FSIZE,%12
- 11260 SYMBOL (570,MY+280),STR$(ENDTOTAL),FSIZE,FSIZE,%12
- 11270 ELSE
- 11280 SYMBOL (20,MY+280) ,"残金" ,FSIZE,FSIZE,%10
- 11290 SYMBOL (530,MY+280),STR$(ZAP%)+"%",FSIZE,FSIZE,%10
- 11300 SYMBOL (570,MY+280),STR$(ENDTOTAL),FSIZE,FSIZE,%10
- 11310 ENDIF
- 11320 '
- 11330 *時間待ち
- 11340 '
- 11350 '
- 11360 ' 無限判定
- 11370 '
- 11380 MOUSE 0
- 11390 '
- 11400 IF PUTTING_TIME=0 THEN
- 11410 IF MOUSE(2,0)=0 OR MOUSE(2,1)=0 THEN *時間待ち
- 11420 END
- 11430 ENDIF
- 11440 '
- 11450 ' 通常ループ
- 11460 '
- 11470 FOR L=1 TO PUTTING_TIME
- 11480 IF MOUSE(2,0)=-1 OR MOUSE(2,1)=-1 THEN END
- 11490 WAIT 100
- 11500 NEXT L
- 11510 END
-